package com.example.service;

import com.example.entity.Question;
import com.github.pagehelper.PageInfo;

import java.util.List;
import java.util.Map;

public interface QuestionService {

    /**
     * 分页获取问题列表
     *
     * @param pageNum  页码
     * @param pageSize 每页大小
     * @return 分页问题列表
     */
    PageInfo<Question> getAllQuestions(int pageNum, int pageSize);

    /**
     * 获取问题概览信息
     *
     * @return 问题概览统计
     */
    List<Integer> getQuestionOverview();

    /**
     * 获取问题分类统计信息
     *
     * @return 问题分类统计
     */
    Map<String, Integer> getQuestionCategory();

    /**
     * 获取问题时间趋势数据
     *
     * @return 问题时间趋势
     */
    Map<String, Object> getQuestionTrend();

    /**
     * 提交问题
     *
     * @param question 提交的问题数据
     * @return 是否成功提交
     */
    boolean submitQuestion(Question question);
}
